#include <stdio.h>

int IsLeep(int y) {
    return ((y%4==0 && y%100!=0)) || (y%400==0);
}

// 模拟法
int main()
{
    // 翻日历法
    int y = 1777, m = 4, d = 30;

    for(int i = 0; i < 8112; i++) {
        d++;   // 按照天数往后翻
        
        // 跨年
        if(m == 12 && 32 == d) {
            y++;
            m = 1;
            d = 1;
            continue;
        }

        // 跨月
        // 31天的月份、30天月份、闰月
        if((1 == m || 3 == m || 5 == m || 7 == m || 8 == m || 10 == m || 12 == m) && 32 == d) {
            m++;
            d = 1;
            continue;
        }
        if((4 == m || 6 == m || 9 == m || 11 == m) && 31 == d) {
            m++;
            d = 1;
            continue;
        }

        // 处理二月份
        // 闰年: 29
        if(2 == m && IsLeep(y) && 30 == d) {
            m++;
            d = 1;
            continue;
        }
        // 平年
        if(2 == m && !IsLeep(y) && 29 == d) {
            m++;
            d = 1;
            continue;
        }
    }
    
    printf("%d-%02d-%02d\n", y, m, d);

    return 0;
}

